import request from '@/utils/request.js';
// import { mockActivityList, mockActivityDetail, mockActivityParticipants, mockSignupActivity, mockCancelSignup } from '@/mock/activity.js';

// 是否使用模拟数据（开发环境使用模拟数据，生产环境使用真实接口）
const USE_MOCK = process.env.NODE_ENV === 'development';

/**
 * 获取活动列表
 * @param {Object} params - 查询参数
 * @param {number} params.pageNum - 页码
 * @param {number} params.pageSize - 每页记录数
 * @param {string} params.keyword - 搜索关键词
 * @param {string} params.status - 活动状态(全部/未开始/进行中/已结束)
 * @returns {Promise} Promise对象
 */
export function getActivityList(params) {

  return request({
    url: `/activity/page`,
    method: 'GET',
    params
  });
}

/**
 * 获取活动详情
 * @param {string|number} id - 活动ID
 * @returns {Promise} Promise对象
 */
export function getActivityDetail(id) {

  
  return request({
    url: `/activity/${id}`,
    method: 'GET'
  });
}

/**
 * 获取活动参与人员列表
 * @param {string|number} activityId - 活动ID
 * @returns {Promise} Promise对象
 */
export function getActivityParticipants(activityId) {

  
  return request({
    url: `/activity/participants/${activityId}`,
    method: 'GET'
  });
}

/**
 * 报名参加活动
 * @param {string|number} activityId - 活动ID
 * @returns {Promise} Promise对象
 */
export function signupActivity(activityId) {

  
  return request({
    url: `/activity/signup/${activityId}`,
    method: 'POST'
  });
}

/**
 * 取消活动报名
 * @param {string|number} activityId - 活动ID
 * @returns {Promise} Promise对象
 */
export function cancelSignup(activityId) {

  
  return request({
    url: `/activity/cancel/${activityId}`,
    method: 'POST'
  });
}

/**
 * 获取我报名的活动列表
 * @param {Object} params 查询参数
 * @returns {Promise}
 */
export function getMyActivities(params) {
  return request({
    url: '/activity/my',
    method: 'GET',
    params
  });
}

/**
 * 获取首页轮播图（前三个活动图片）
 * @returns {Promise} Promise对象
 */
export function getBannerImages() {
  return request({
    url: '/activity/banner',
    method: 'GET'
  });
}

/**
 * 获取首页推荐活动（最新三个活动）
 * @returns {Promise} Promise对象
 */
export function getRecommendActivities() {
  return request({
    url: '/activity/recommend',
    method: 'GET'
  });
}

/**
 * 活动相关API集合
 */
export const activityApi = {
  getActivityList,
  getActivityDetail,
  getActivityParticipants,
  signupActivity,
  cancelSignup,
  getMyActivities,
  getBannerImages,
  getRecommendActivities
}; 